Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[pull] master from OpenRefine:master #129

Open
wants to merge 2,918 commits into
base: master
Choose a base branch
from
Open

Conversation

pull[bot]
Copy link

@pull pull bot commented Dec 7, 2020

See Commits and Changes for more details.


Created by pull[bot]

Can you help keep this open source service alive? 💖 Please sponsor : )

Summary by CodeRabbit

Release Notes:

  • Refactor: Updated the codebase with improved formatting, variable naming, and exception handling.
  • New Feature: Added a new method registerDatabase to the inner class DBType.
  • Bug fix: Improved error handling in user authentication and file upload functions.
  • Security: Enhanced password hashing mechanism using bcrypt with higher work factor.

🎉🐇

Hopping through the code, making it neat,

With every refactor, we skip a beat.

New features added, bugs are no more,

Security tightened, like never before!

Celebrate the changes, for they are grand,

Crafted carefully by our coder's hand. 🥕🎉

@pull pull bot added the ⤵️ pull label Dec 7, 2020
// Make sure string options are treated as CSS selectors
target = typeof options.of === "string" ?
$( document ).find( options.of ) :
$( options.of ),

Check warning

Code scanning / CodeQL

Unsafe jQuery plugin

Potential XSS vulnerability in the ['$.fn.position' plugin](1).
},
// contextmenu show dispatcher
contextmenu: function (e) {
var $this = $(this);

Check warning

Code scanning / CodeQL

Unsafe jQuery plugin

Potential XSS vulnerability in the ['$.fn.contextMenu' plugin](1).
if (e.data.items.hasOwnProperty(item)) {
var visible;
if ($.isFunction(e.data.items[item].visible)) {
visible = e.data.items[item].visible.call($(e.currentTarget), item, e.data);

Check warning

Code scanning / CodeQL

Unsafe jQuery plugin

Potential XSS vulnerability in the ['$.fn.contextMenu' plugin](1).
o.context = document;
} else {
// you never know what they throw at you...
$context = $(o.context).first();

Check warning

Code scanning / CodeQL

Unsafe jQuery plugin

Potential XSS vulnerability in the ['$.fn.contextMenu' plugin](1).
// you never know what they throw at you...
$context = $(o.context).first();
o.context = $context.get(0);
_hasContext = !$(o.context).is(document);

Check warning

Code scanning / CodeQL

Unsafe jQuery plugin

Potential XSS vulnerability in the ['$.fn.contextMenu' plugin](1).
}

// Is this menu equest to the context called from
if (!$(context).is(o.selector)) {

Check warning

Code scanning / CodeQL

Unsafe jQuery plugin

Potential XSS vulnerability in the ['$.fn.contextMenu' plugin](1).
Copy link

@github-advanced-security github-advanced-security bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

CodeQL found more than 10 potential problems in the proposed changes. Check the Files changed tab for more details.

@coderabbitai
Copy link

coderabbitai bot commented Aug 15, 2023

Important

Auto Review Skipped

Bot user detected.

To trigger a single review, invoke the @coderabbitai review command.

Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?

Share

Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>.
    • Generate unit-tests for this file.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai generate unit tests for this file.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai generate interesting stats about this repository from git and render them as a table.
    • @coderabbitai show all the console.log statements in this repository.
    • @coderabbitai read src/utils.ts and generate unit tests.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (invoked as PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger a review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai help to get help.

Additionally, you can add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.

CodeRabbit Configration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • The JSON schema for the configuration file is available here.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/coderabbit-overrides.v2.json

CodeRabbit Discord Community

Join our Discord Community to get help, request features, and share feedback.

Comment on lines +4 to +10
security create-keychain -p gh_actions refine-build.keychain

# Make the custom keychain default, so xcodebuild will use it for signing
security default-keychain -s refine-build.keychain

# Unlock the keychain
security unlock-keychain -p gh_actions refine-build.keychain
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Image description CodeRabbit

The script uses a hardcoded password gh_actions for creating and unlocking the keychain. This could be a potential security risk if this script is part of a public repository. Consider using environment variables or secure files to store sensitive information like passwords.

- security create-keychain -p gh_actions refine-build.keychain
- security unlock-keychain -p gh_actions refine-build.keychain
+ security create-keychain -p $KEYCHAIN_PASSWORD refine-build.keychain
+ security unlock-keychain -p $KEYCHAIN_PASSWORD refine-build.keychain

Comment on lines +82 to +83
run: |
echo "COVERALLS_TOKEN=$(echo eUVUVGRHOFJhQm9GMFJBYTNibjVhcWFEblpac1lmMlE3Cg== | base64 -d)" >> $GITHUB_ENV
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Image description CodeRabbit

The COVERALLS_TOKEN is being decoded from a base64 string and set as an environment variable. This could potentially expose sensitive information if logs are not properly secured. Consider using GitHub Secrets to store sensitive data like tokens.

Comment on lines +62 to +75
### Steering Committee
The steering committee oversees the general direction of the project and initiates connections and collaborations with other organizations and projects.

* Advise the Project’s staff on processes, strategy, and operations;
* Participate in decision making and/or review of roadmaps, as time allows;
* Participate to some Steering Committee meetings, when time allows;
* Help the Project build connections and partnerships by helping project leadership to steward relationships with funders and partners, making strategic introductions for project leadership, reviewing documents when needed, as time allows;
* Act as an advocate for the Project in events and support the project’s communication online, as time allows.

- Help contributors via the [developer discussion list](https://groups.google.com/forum/?fromgroups#!forum/openrefine-dev).
- Merge pull requests submitted by contributors
- Have direct access to the code base
- Nominate and vote for new committers
#### How to be part of the Steering Committee
Steering Committee members are invited by OpenRefine's Advisory Committee

Committers participate in the Project Management Committee (PMC). They engage in strategic planning, release planning, and approving changes to the governance model. The list of committers is available here: https://github.com/orgs/OpenRefine/people
#### Current list of Steering Committee members
There is currently no Steering Committee as the project is looking for a better format. See discussion [Fwd: Steering committee being disbanded?](https://forum.openrefine.org/t/fwd-steering-committee-being-disbanded/430/) and [Proposition to create OpenRefine Ambassador Council](https://forum.openrefine.org/t/proposition-to-create-openrefine-ambassador-council/462)
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Image description CodeRabbit

The Steering Committee's role has been clearly defined. However, there seems to be some uncertainty about the current status of the Steering Committee based on the linked discussions. It would be beneficial to resolve this uncertainty and update the governance document accordingly.

Comment on lines +1 to +4
import requests
import os
from lxml import html
import sys
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Image description CodeRabbit

The script imports several modules but does not handle the case where these modules might not be installed. This could lead to a ModuleNotFoundError if the script is run in an environment where any of these modules are not installed. It would be better to wrap these import statements in a try-except block and provide a user-friendly message if any module is not found.

+try:
  import requests
  import os
  from lxml import html
  import sys
  import json
+except ModuleNotFoundError as e:
+  print(f"Required module not found: {e.name}. Please install it before running this script.")
+  sys.exit(1)

Comment on lines +23 to +24
repo = os.environ.get('GITHUB_REPO')
github_token = os.environ.get('GITHUB_TOKEN')
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Image description CodeRabbit

The script retrieves the GitHub repository name and token from environment variables but does not check whether these values are actually provided. If these environment variables are not set, the script will continue with None values, which could lead to unexpected behavior or errors later on. It would be better to check these values right after retrieving them and exit the script with an error message if they are not provided.

  repo = os.environ.get('GITHUB_REPO')
  github_token = os.environ.get('GITHUB_TOKEN')
+if not repo or not github_token:
+    print("Environment variables GITHUB_REPO and GITHUB_TOKEN must be set.")
+    sys.exit(1)

Comment on lines +74 to +75
resp = requests.put(url, headers=headers, data=json.dumps({'labels':new_labels}))
resp.raise_for_status()
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Image description CodeRabbit

The script makes a PUT request to the GitHub API but does not handle potential exceptions that could occur during this operation. For example, the request could fail due to network issues, or the API could return an error response. It would be better to wrap this operation in a try-except block and handle potential requests.exceptions.RequestException exceptions.

+try:
  resp = requests.put(url, headers=headers, data=json.dumps({'labels':new_labels}))
  resp.raise_for_status()
+except requests.exceptions.RequestException as e:
+  print(f"An error occurred while updating labels: {str(e)}")

Comment on lines +4 to +70

<div class="pure-menu pure-menu-scrollable custom-restricted">
<span class="pure-menu-heading" id="savedConnectionSpan">Saved Connections</span>
<ul class="pure-menu-list" bind="menuListUl" id="menuListUl"></ul>
</div>

</div>
</div>
<div class="custom-restricted database-border">
<span id="savedConnectionSpan">Saved connections</span>
<ul bind="menuListUl" id="menuListUl"></ul>
</div>

<div class="connection-div-layout pure-u-4-5">
<div class="connection-div-layout">

<div id = "newConnectionDiv" class="new-connection-div " bind="newConnectionDiv">

<!-- <div class="panel panel-info"> -->
<form class="pure-form pure-form-aligned">
<fieldset class="new-connection-fieldset">
<legend class="new-connection-legend pure-input-1-2" id="new-connection-legend"></legend>
<form>
<fieldset class="new-connection-fieldset database-border">
<legend class="new-connection-legend" id="new-connection-legend"></legend>

<div class="pure-control-group">
<label id="connectionNameLabel" for="name"></label>
<input bind="connectionNameInput" id="connectionName" type="text" placeholder="" value="" class="pure-input-1-3" required>
<div>
<label id="connectionNameLabel" for="connectionName"></label>
<input spellcheck="false" bind="connectionNameInput" id="connectionName" type="text" placeholder="" value="" required>
</div>

<div class="pure-control-group">
<label id="databaseTypeLabel" for="databaseType"></label>
<select name="selection" id="databaseTypeSelect" bind="databaseTypeSelect" class="pure-input-1-3" required>
<div>
<label id="databaseTypeLabel" for="databaseTypeSelect"></label>
<select name="selection" id="databaseTypeSelect" bind="databaseTypeSelect" required>
<option value="postgresql">PostgreSQL</option>
<option value="mysql" selected="selected">MySQL</option>
<option value="mariadb">MariaDB</option>
<option value="sqlite">SQLite</option>
</select>
</div>

<div class="pure-control-group dbtype-options dbt-postgresql dbt-mysql dbt-mariadb">
<div class="dbtype-options dbt-postgresql dbt-mysql dbt-mariadb">
<label id="databaseHostLabel" for="databaseHost"></label>
<input bind="databaseHostInput" id="databaseHost" type="text" placeholder="" value="localhost" class="pure-input-1-3" required>
<input spellcheck="false" bind="databaseHostInput" id="databaseHost" type="text" placeholder="" value="localhost" required>
</div>
<div class="pure-control-group dbtype-options dbt-postgresql dbt-mysql dbt-mariadb">
<div class="dbtype-options dbt-postgresql dbt-mysql dbt-mariadb">
<label id="databasePortLabel" for="databasePort"></label>
<input bind="databasePortInput" id="databasePort" type="text" placeholder="" value="5432" class="pure-input-1-3" required>
<input spellcheck="false" bind="databasePortInput" id="databasePort" type="text" placeholder="" value="5432" required>
</div>
<div class="pure-control-group dbtype-options dbt-postgresql dbt-mysql dbt-mariadb">
<div class="dbtype-options dbt-postgresql dbt-mysql dbt-mariadb">
<label id="databaseUserLabel" for="databaseUser"></label>
<input bind="databaseUserInput" id="databaseUser" type="text" placeholder="" value="postgres" class="pure-input-1-3" required>
<input spellcheck="false" bind="databaseUserInput" id="databaseUser" type="text" placeholder="" value="postgres" required>
</div>
<div class="pure-control-group dbtype-options dbt-postgresql dbt-mysql dbt-mariadb">
<div class="dbtype-options dbt-postgresql dbt-mysql dbt-mariadb">
<label id="databasePasswordLabel" for="databasePassword"></label>
<input bind="databasePasswordInput" id="databasePassword" type="password" placeholder="" class="pure-input-1-3" required>
<input bind="databasePasswordInput" id="databasePassword" type="password" placeholder="" required>
</div>
<div class="pure-control-group dbtype-options dbt-postgresql dbt-mysql dbt-mariadb dbt-sqlite">
<div class=" dbtype-options dbt-postgresql dbt-mysql dbt-mariadb dbt-sqlite">
<label id="databaseNameLabel" for="initialDatabase"></label>
<input bind="initialDatabaseInput" id="initialDatabase" type="text" placeholder="" class="pure-input-1-3" required>
<input spellcheck="false" bind="initialDatabaseInput" id="initialDatabase" type="text" placeholder="" required>
</div>
<div class="pure-control-group dbtype-options">
<div class="dbtype-options">
<label id="databaseSchemaLabel" for="initialSchema"></label>
<input bind="initialSchemaInput" id="initialSchema" type="text" placeholder="" class="pure-input-1-3" required>
<input spellcheck="false" bind="initialSchemaInput" id="initialSchema" type="text" placeholder="" required>
</div>

<div class="pure-controls" id="newConnectionControlDiv">
<button type="button" id="databaseTestButton" bind="testDatabaseButton" class="pure-button pure-button-primary"><span>Test</span></button>
<button type="button" id="databaseSaveButton" bind="saveConnectionButton" class="button-success pure-button">Save</button>
<button type="button" id="databaseConnectButton" bind="databaseConnectButton" class="button-secondary pure-button">Connect</button>
<div id="newConnectionControlDiv">
<button type="button" class="button" id="databaseTestButton" bind="testDatabaseButton"><span>Test</span></button>
<button type="button" class="button" id="databaseSaveButton" bind="saveConnectionButton">Save</button>
<button type="button" class="button" id="databaseConnectButton" bind="databaseConnectButton">Connect</button>
</div>

<div class="pure-controls" id="editConnectionControlDiv" style="display: none;">
<button type="button" id="connectionEditButton" bind="editConnectionButton" class="pure-button pure-button-primary"><span>Edit</span></button>
<button type="button" id="connectionEditCancelButton" bind="cancelEditConnectionButton" class="pure-button">Cancel</button>
<div id="editConnectionControlDiv" style="display: none;">
<button type="button" class="button" id="connectionEditButton" bind="editConnectionButton"><span>Edit</span></button>
<button type="button" class="button" id="connectionEditCancelButton" bind="cancelEditConnectionButton">Cancel</button>
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Image description CodeRabbit

The form elements in the new connection form have been updated with spellcheck="false" attribute. This is a good practice to prevent browsers from checking spelling in input fields where it's not necessary, such as database names, usernames, etc. However, the password field (line 51) does not have this attribute. It would be beneficial to add spellcheck="false" to the password field as well to prevent unnecessary spell checks.

- <input bind="databasePasswordInput" id="databasePassword" type="password" placeholder="" required>
+ <input spellcheck="false" bind="databasePasswordInput" id="databasePassword" type="password" placeholder="" required>

Comment on lines 133 to 135


</div><!-- End databaseContainer -->
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Image description CodeRabbit

Note: This review was outside of the patch, so it was mapped to the patch with the greatest overlap. Original lines [133-136]

There is no newline at the end of the file. While this won't cause any issues in HTML, it's generally a good practice to end files with a newline. This is because some Unix-based tools require a newline at the end of files to function properly. Consider adding a newline at the end of the file.

- </div><!-- End databaseContainer -->
+ </div><!-- End databaseContainer -->
+

Comment on lines +174 to +177
$(window).on('resize',this._parsingPanelResizer);
this._parsingPanelResizer();

this._parsingPanelElmts.startOverButton.click(function() {
this._parsingPanelElmts.startOverButton.on('click',function() {
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Image description CodeRabbit

The jQuery .on() method is used instead of .resize(), which is a good practice as it provides a unified way to handle different types of events. However, please ensure that the this._parsingPanelResizer function is correctly bound to the window resize event and works as expected.

Comment on lines +187 to +188
this._parsingPanelElmts.createProjectButton.on('click',function() { self._createProject(); });
this._parsingPanelElmts.previewButton.on('click',function() { self._updatePreview(); });
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Image description CodeRabbit

The jQuery .on() method is used instead of .click(), which is a good practice as it provides a unified way to handle different types of events. However, please ensure that the click handlers for createProjectButton and previewButton work as expected.

Comment on lines +209 to +221
if (this._options.disableAutoPreview) {
this._parsingPanelElmts.disableAutoPreviewCheckbox.prop('checked', true);
}

// If disableAutoPreviewCheckbox is not checked, we will schedule an automatic update
var onChange = function() {
self._scheduleUpdatePreview();
if (!self._parsingPanelElmts.disableAutoPreviewCheckbox[0].checked)
{
self._scheduleUpdatePreview();
}
};
this._parsingPanel.find("input").bind("change", onChange);
this._parsingPanel.find("select").bind("change", onChange);
this._parsingPanel.find("input").on("change", onChange);
this._parsingPanel.find("select").on("change", onChange);
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Image description CodeRabbit

The onChange function now checks if the disableAutoPreviewCheckbox is checked before scheduling an update preview. This is a good change as it prevents unnecessary preview updates when auto preview is disabled. However, please ensure that this new behavior doesn't introduce any unexpected side effects in the UI or elsewhere in the code.

@@ -268,7 +262,7 @@ Refine.DatabaseImportController.prototype._updatePreview = function() {
self._parsingPanelElmts.progressPanel.hide();
self._parsingPanelElmts.dataPanel.show();

new Refine.PreviewTable(projectData, self._parsingPanelElmts.dataPanel.unbind().empty());
new Refine.PreviewTable(projectData, self._parsingPanelElmts.dataPanel.off().empty());
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Image description CodeRabbit

The jQuery .off() method is used instead of .unbind(), which is a good practice as it provides a unified way to remove event handlers. However, please ensure that all previous event handlers are correctly removed from dataPanel before it's emptied and filled with new content.

Comment on lines 27 to 33
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/

//Internationalization init
var lang = navigator.language.split("-")[0]
|| navigator.userLanguage.split("-")[0];
var dictionary = "";
$.ajax({
url : "command/core/load-language?",
type : "POST",
async : false,
data : {
module : "database",
},
success : function(data) {
dictionary = data['dictionary'];
lang = data['lang'];
}
});
$.i18n().load(dictionary, lang);
// End internationalization
I18NUtil.init("database");

Refine.DatabaseImportController = function(createProjectUI) {
this._createProjectUI = createProjectUI;
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Image description CodeRabbit

Note: This review was outside of the patch, but no patch was found that overlapped with it. Original lines [383-383]

There's no newline at the end of the file. While this won't cause any issues in JavaScript, it's a common convention to end files with a newline. This helps with displaying the file correctly in certain text editors and command line tools.

- };
+ };
+ 

dependabot bot and others added 13 commits June 25, 2024 11:26
…#6690)

Bumps the cypress group in /main/tests/cypress with 1 update: [cypress](https://github.com/cypress-io/cypress).


Updates `cypress` from 13.11.0 to 13.12.0
- [Release notes](https://github.com/cypress-io/cypress/releases)
- [Changelog](https://github.com/cypress-io/cypress/blob/develop/CHANGELOG.md)
- [Commits](cypress-io/cypress@v13.11.0...v13.12.0)

---
updated-dependencies:
- dependency-name: cypress
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: cypress
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
…6688)

Bumps [org.apache.maven.plugins:maven-dependency-plugin](https://github.com/apache/maven-dependency-plugin) from 3.7.0 to 3.7.1.
- [Release notes](https://github.com/apache/maven-dependency-plugin/releases)
- [Commits](apache/maven-dependency-plugin@maven-dependency-plugin-3.7.0...maven-dependency-plugin-3.7.1)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-dependency-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [org.apache.maven.plugins:maven-clean-plugin](https://github.com/apache/maven-clean-plugin) from 3.3.2 to 3.4.0.
- [Release notes](https://github.com/apache/maven-clean-plugin/releases)
- [Commits](apache/maven-clean-plugin@maven-clean-plugin-3.3.2...maven-clean-plugin-3.4.0)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-clean-plugin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [org.apache.maven.plugins:maven-jar-plugin](https://github.com/apache/maven-jar-plugin) from 3.4.1 to 3.4.2.
- [Release notes](https://github.com/apache/maven-jar-plugin/releases)
- [Commits](apache/maven-jar-plugin@maven-jar-plugin-3.4.1...maven-jar-plugin-3.4.2)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-jar-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
- Add a getFileName method in the ImportingUtilities so it can be used to
get the name of the file from the fileRecord and add a test for it.

- Add a new variable (fileName) in the ImportingParserBase method,that
will hold the return value of the new getFileName method of the
ImportingUtilities. So it can be parsed to the parseOneFile method
instead of the fileSource.

This is done to keep the provenance information from being lost.
…oup (#6700)

Bumps the cypress group in /main/tests/cypress with 1 update: [eslint](https://github.com/eslint/eslint).


Updates `eslint` from 9.5.0 to 9.6.0
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](eslint/eslint@v9.5.0...v9.6.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: cypress
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* Revert "Make UI update when matching cell. (#6239)"

This reverts commit dd5c118.

* Enable in-place re-render of affected cell

Passes down the DOM element so that it's available for re-render.
Closes #6695.

* Add Cypress regression test
* Backport contributing row ids (long for now)

* Migrate contributingRowIds to int

* Include Wikibase editing errors in the grid

* Separate out error reporting logic for testability

* Add error handling facet

* Do not add edit link if no edit was made

* Include URLs of new entities in editing results column
* Update pom.xml Adding OpenRefine Contributors with link to Github
* Add dialog to warn of history entry deletion (#5577)

Backports #5577 to master (see the discussion there).
Closes #3184.

* Apply suggestions from code review

Co-authored-by: Tom Morris <tfmorris@gmail.com>

---------

Co-authored-by: Tom Morris <tfmorris@gmail.com>
Currently translated at 100.0% (880 of 880 strings)

Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Translate-URL: https://hosted.weblate.org/projects/openrefine/translations/es/
Translation: OpenRefine/Translations
Since it requires higher Java versions.
wetneb and others added 30 commits October 28, 2024 16:55
* ui: Avoid making unnecessary CSRF token requests

Our CSRF tokens are valid for an hour, so it is not necessary
to get a fresh token before every time we call a CSRF-protected command.
This adds the necessary logic to remeber such tokens and invalidate them
well before they expire.

* Update main/webapp/modules/core/scripts/util/csrf.js

Co-authored-by: Tom Morris <tfmorris@gmail.com>

---------

Co-authored-by: Tom Morris <tfmorris@gmail.com>
Bumps the cypress group in /main/tests/cypress with 1 update: [cypress](https://github.com/cypress-io/cypress).


Updates `cypress` from 13.15.0 to 13.15.1
- [Release notes](https://github.com/cypress-io/cypress/releases)
- [Changelog](https://github.com/cypress-io/cypress/blob/develop/CHANGELOG.md)
- [Commits](cypress-io/cypress@v13.15.0...v13.15.1)

---
updated-dependencies:
- dependency-name: cypress
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cypress
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* Fix attempt for flaky facet include test. Fixes #6940.

- increase wait to give some headroom over client timer
- simplify selection logic

* Fix and enable facet collapse test

- also delete dead code
…6950)

Bumps [org.apache.httpcomponents.client5:httpclient5](https://github.com/apache/httpcomponents-client) from 5.4 to 5.4.1.
- [Changelog](https://github.com/apache/httpcomponents-client/blob/rel/v5.4.1/RELEASE_NOTES.txt)
- [Commits](apache/httpcomponents-client@rel/v5.4...rel/v5.4.1)

---
updated-dependencies:
- dependency-name: org.apache.httpcomponents.client5:httpclient5
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [org.xerial:sqlite-jdbc](https://github.com/xerial/sqlite-jdbc) from 3.46.1.3 to 3.47.0.0.
- [Release notes](https://github.com/xerial/sqlite-jdbc/releases)
- [Changelog](https://github.com/xerial/sqlite-jdbc/blob/master/CHANGELOG)
- [Commits](xerial/sqlite-jdbc@3.46.1.3...3.47.0.0)

---
updated-dependencies:
- dependency-name: org.xerial:sqlite-jdbc
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [org.mariadb.jdbc:mariadb-java-client](https://github.com/mariadb-corporation/mariadb-connector-j) from 3.4.1 to 3.5.0.
- [Release notes](https://github.com/mariadb-corporation/mariadb-connector-j/releases)
- [Changelog](https://github.com/mariadb-corporation/mariadb-connector-j/blob/master/CHANGELOG.md)
- [Commits](mariadb-corporation/mariadb-connector-j@3.4.1...3.5.0)

---
updated-dependencies:
- dependency-name: org.mariadb.jdbc:mariadb-java-client
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Fixes #6877

Identifying file format from registered file types as format guessers support text based files.
Bumps [org.codehaus.mojo:exec-maven-plugin](https://github.com/mojohaus/exec-maven-plugin) from 3.4.1 to 3.5.0.
- [Release notes](https://github.com/mojohaus/exec-maven-plugin/releases)
- [Commits](mojohaus/exec-maven-plugin@3.4.1...3.5.0)

---
updated-dependencies:
- dependency-name: org.codehaus.mojo:exec-maven-plugin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* - This should help the flakyness for some of the facet tests.
- Mimics correct user behavior with using mouse to hover over a facet choice and then edit|include appear
- Previous method used `invoke()` to forceably change css style, instead of correctly triggering jQuery list-facet.js events `mouseenter mouseleave`
https://github.com/OpenRefine/OpenRefine/blob/dac141c2049e651ff63ac339639add5b7e02ba51/main/webapp/modules/core/scripts/facets/list-facet.js#L484-L490

 Reference: https://github.com/cypress-io/cypress-example-recipes/blob/a2e24d19ec70c3fa8ae6a4a47574a239fc32c3e7/examples/testing-dom__hover-hidden-elements/cypress/e2e/hover-hidden-elements-spec.cy.js#L68

* Start new cy chain after trigger since it's unsafe to chain from

---------

Co-authored-by: Tom Morris <tfmorris@gmail.com>
…#6956)

Bumps [org.apache.maven.plugins:maven-site-plugin](https://github.com/apache/maven-site-plugin) from 3.20.0 to 3.21.0.
- [Release notes](https://github.com/apache/maven-site-plugin/releases)
- [Commits](apache/maven-site-plugin@maven-site-plugin-3.20.0...maven-site-plugin-3.21.0)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-site-plugin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [org.apache.httpcomponents.core5:httpcore5](https://github.com/apache/httpcomponents-core) from 5.3 to 5.3.1.
- [Changelog](https://github.com/apache/httpcomponents-core/blob/rel/v5.3.1/RELEASE_NOTES.txt)
- [Commits](apache/httpcomponents-core@rel/v5.3...rel/v5.3.1)

---
updated-dependencies:
- dependency-name: org.apache.httpcomponents.core5:httpcore5
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [org.apache.maven.plugins:maven-dependency-plugin](https://github.com/apache/maven-dependency-plugin) from 3.8.0 to 3.8.1.
- [Release notes](https://github.com/apache/maven-dependency-plugin/releases)
- [Commits](apache/maven-dependency-plugin@maven-dependency-plugin-3.8.0...maven-dependency-plugin-3.8.1)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-dependency-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* ci: Move Cypress record key to a GH Actions secret

Closes #6959

* Move Cypress project id to test run

- the refine script is unhappy if there's a Cypress project
  ID without a corresponding record key

* Fix snapshot release workflow as well

We should probably try to DRY this up

* Move Cypress project ID to a variable

* Just for grins try a different secret name

* Revert "Just for grins try a different secret name"

This reverts commit bed94f1.

Go back to more readable name, which appears to have worked after all.

---------

Co-authored-by: Tom Morris <tfmorris@gmail.com>
Fixes #6584. add Cypress fixture for records.
Adds new file `donut-records.json` to Cypress fixtures.
Bumps com.google.apis:google-api-services-drive from v3-rev20240914-2.0.0 to v3-rev20241014-2.0.0.

---
updated-dependencies:
- dependency-name: com.google.apis:google-api-services-drive
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps the cypress group in /main/tests/cypress with 2 updates: [eslint](https://github.com/eslint/eslint) and [eslint-plugin-cypress](https://github.com/cypress-io/eslint-plugin-cypress).


Updates `eslint` from 9.13.0 to 9.14.0
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](eslint/eslint@v9.13.0...v9.14.0)

Updates `eslint-plugin-cypress` from 4.0.0 to 4.1.0
- [Release notes](https://github.com/cypress-io/eslint-plugin-cypress/releases)
- [Commits](cypress-io/eslint-plugin-cypress@v4.0.0...v4.1.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: cypress
- dependency-name: eslint-plugin-cypress
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: cypress
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
)

Bumps the actions group with 1 update: [shogo82148/actions-upload-release-asset](https://github.com/shogo82148/actions-upload-release-asset).


Updates `shogo82148/actions-upload-release-asset` from 1.7.7 to 1.7.8
- [Release notes](https://github.com/shogo82148/actions-upload-release-asset/releases)
- [Commits](shogo82148/actions-upload-release-asset@v1.7.7...v1.7.8)

---
updated-dependencies:
- dependency-name: shogo82148/actions-upload-release-asset
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: actions
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
….2 (#6973)

Bumps [org.apache.maven.plugins:maven-surefire-plugin](https://github.com/apache/maven-surefire) from 3.5.1 to 3.5.2.
- [Release notes](https://github.com/apache/maven-surefire/releases)
- [Commits](apache/maven-surefire@surefire-3.5.1...surefire-3.5.2)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-surefire-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps `jackson.version` from 2.18.0 to 2.18.1.

Updates `com.fasterxml.jackson.core:jackson-databind` from 2.18.0 to 2.18.1
- [Commits](https://github.com/FasterXML/jackson/commits)

Updates `com.fasterxml.jackson.core:jackson-annotations` from 2.18.0 to 2.18.1
- [Commits](https://github.com/FasterXML/jackson/commits)

Updates `com.fasterxml.jackson.datatype:jackson-datatype-jdk8` from 2.18.0 to 2.18.1

Updates `com.fasterxml.jackson.core:jackson-core` from 2.18.0 to 2.18.1
- [Commits](FasterXML/jackson-core@jackson-core-2.18.0...jackson-core-2.18.1)

---
updated-dependencies:
- dependency-name: com.fasterxml.jackson.core:jackson-databind
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: com.fasterxml.jackson.core:jackson-annotations
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: com.fasterxml.jackson.datatype:jackson-datatype-jdk8
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: com.fasterxml.jackson.core:jackson-core
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
…1.1 (#6972)

Bumps [org.apache.maven.plugins:maven-javadoc-plugin](https://github.com/apache/maven-javadoc-plugin) from 3.10.1 to 3.11.1.
- [Release notes](https://github.com/apache/maven-javadoc-plugin/releases)
- [Commits](apache/maven-javadoc-plugin@maven-javadoc-plugin-3.10.1...maven-javadoc-plugin-3.11.1)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-javadoc-plugin
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
This change makes the client link printed to the terminal during startup
clickable/selectable(in most terminals).

Most terminals(tested on a few Linux terminals) needs a protocol in front
of links/ips to detect them.

No tested terminals supported a wildcard("//") protocol so this change
assumes that one either serves OpenRefine over plain HTTP or that ones
ones setup at least redirects plain HTTP calls.
Currently translated at 71.1% (254 of 357 strings)

Translation: OpenRefine/wikibase
Translate-URL: https://hosted.weblate.org/projects/openrefine/wikidata/fr/
Update the REFINE_INTERFACE and REFINE_HOST variables.
Bumps the cypress group in /main/tests/cypress with 1 update: [cypress](https://github.com/cypress-io/cypress).


Updates `cypress` from 13.15.1 to 13.15.2
- [Release notes](https://github.com/cypress-io/cypress/releases)
- [Changelog](https://github.com/cypress-io/cypress/blob/develop/CHANGELOG.md)
- [Commits](cypress-io/cypress@v13.15.1...v13.15.2)

---
updated-dependencies:
- dependency-name: cypress
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cypress
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Currently translated at 100.0% (12 of 12 strings)

Translation: OpenRefine/OpenRefine Control Evaluation Errors
Translate-URL: https://hosted.weblate.org/projects/openrefine/openrefine-control-evaluation-errors/he/
…ng (#6156)

Fixes #4824

---------

Co-authored-by: Antonin Delpeuch <antonin@delpeuch.eu>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.